import wx

# 自定义窗口类
class MyFrame(wx.Frame):
    def __init__(self, parent, title):
        super().__init__(parent, title=title, size=(300, 200))
        # 创建一个面板
        self.panel = wx.Panel(self)
        #创建一个垂直盒子布局管理器
        vbox = wx.BoxSizer(wx.VERTICAL)
        # 将盒子布局管理器设置为面板的布局管理器
        self.panel.SetSizer(vbox)

        # 创建一个静态文本标签
        self.label = wx.StaticText(self.panel, label="Hello, wxPython!")
        # 将标签添加到垂直盒子布局管理器中
        vbox.Add(self.label, 1, wx.ALL | wx.CENTER , 5)

        # 创建一个水平盒子布局管理器
        hbox = wx.BoxSizer(wx.HORIZONTAL)
        # 创建两个按钮，并添加到水平盒子布局管理器中，并且平分布局
        self.button1 = wx.Button(self.panel, label="按钮1")
        self.button2 = wx.Button(self.panel, label="按钮2")
        hbox.Add(self.button1, 1, wx.ALL | wx.CENTER, 5)
        hbox.Add(self.button2, 1, wx.ALL | wx.CENTER, 5)

        # 将水平盒子布局管理器添加到垂直盒子布局管理器中
        vbox.Add(hbox, 1, wx.ALL | wx.CENTER, 5)


if __name__ == "__main__":
    # 创建一个应用程序
    app = wx.App()
    # 创建一个窗口
    frame = MyFrame(None, title="Hello, wxPython!")
    # 显示窗口
    frame.Show()
    # 运行应用程序
    app.MainLoop()
